Сигнализация в помещение на Arduino. GSM охранная система для дома на базе Arduino

Кражи автомобилей на протяжении последнего десятилетия занимают одно из значимых мест в структуре совершаемых в мире преступлений. Это обусловлено не столько удельным весом данной категории хищений относительно общего количества преступлений, сколько существенностью причиняемого ущерба ввиду большой стоимости автомобилей. Слабая эффективность принимаемых мер в области борьбы с кражами автотранспорта к концу 90-х годов привела к созданию устойчивых групп, специализирующихся на совершении данных преступлений и обладающих отличительными чертами организованной преступности; вы наверняка слышали термин «черный автобизнес». Автомобильный парк европейских государств ежегодно не досчитывается ≈ 2 % машин, которые становятся предметом преступных посягательств. Поэтому мне пришла идея сделать gsm-сигнализацию для своего автомобиля на базе Arduino Uno.

Начнём!

Из чего будем собирать

Надо выбрать сердце нашей системе. На мой взгляд, для подобной сигнализации нет ничего лучше, чем Arduino Uno. Основной критерий - достаточное количество «пинов» и цена.


Основные характеристики Arduino Uno

Микроконтроллер - ATmega328
Рабочее напряжение - 5 В
Входное напряжение (рекомендуемое) - 7-12 В
Входное напряжение (предельное) - 6-20 В
Цифровые Входы/Выходы - 14 (6 из которых могут использоваться как выходы ШИМ)
Аналоговые входы - 6
Постоянный ток через вход/выход - 40 мА
Постоянный ток для вывода 3.3 В - 50 мА
Флеш-память - 32 Кб (ATmega328) из которых 0.5 Кб используются для загрузчика
ОЗУ - 2 Кб (ATmega328)
EEPROM - 1 Кб (ATmega328)
Тактовая частота - 16 МГц


Подходит!

Теперь необходимо выбрать gsm-модуль, ведь наша сигнализация должна уметь оповещать владельца автомобиля. Так, надо «погуглить»… Вот, отличный датчик - SIM800L, размер просто замечательный.


Подумал я и заказал его из Китая. Однако всё оказалось не так радужно. Датчик просто отказался регистрировать SIM-карту в сети. Было опробовано всё, что только возможно - результат нулевой.
Нашлись добрые люди, которые предоставили мне более крутую штуку - Sim900 Shield. Вот это уже серьёзный штучка. В Shield-е и разъём для микрофона и для наушников, полноценный телефон.


Основные характеристики Sim900 Shield

4 стандарта рабочей частоты 850/ 900/ 1800/ 1900 MHz
GPRS multi-slot класс 10/8
GPRS mobile station class B
Соответствует GSM phase 2/2+
Class 4 (2 W @850/ 900 MHz)
Class 1 (1 W @ 1800/1900MHz)
Управление с помощью AT команд (GSM 07.07 ,07.05 и SIMCOM расширенные AT команды)
Низкое энергопотребление: 1.5mA(sleep mode)
Диапазон рабочих температур: от -40°C до +85 °C


Подходит!

Ок, но надо же снимать показания с каких-то датчиков, чтобы оповещать владельца. Вдруг автомобиль эвакуируют, тогда положение автомобиля явно будет меняться в пространстве. Возьмём акселерометр и гироскоп. Отлично. Такс, теперь ищем датчик.

Думаю, что GY-521 MPU6050 точно подойдёт. Оказалось, что в нём есть и датчик температуры. Надо бы и его задействовать, будет такая «киллер фича». Предположим, что владелец автомобиля поставил его под домой и ушёл. Температура в салоне автомобиля будет изменяется «плавно». Что же будет, если злоумышленник попытается проникнуть в автомобиль? Например у него получится открыть дверь. Температура в автомобиле начнёт изменяться стремительно, так как воздух в салоне начнёт смешиваться с воздухом окружающей среды. Думаю, что будет работать.


Основные характеристики GY-521 MPU6050

Модуль 3-х осевого гироскопа + 3-х осевого акселерометра GY-521 на чипе MPU-6050. Позволяет определить положение и перемещение объекта в пространстве, угловую скорость при вращении. Так же имеет встроенный датчик температуры. Используется в различных коптерах и авиамоделях, так же на основе этих датчиков можно собрать систему захвата движений.

Микросхема - MPU-6050
Напряжение питания - от 3,5V до 6V (DC);
Диапазон гироскопа - ± 250 500 1000 2000 ° / с
Диапазон акселерометра - ± 2 ± 4 ± 8 ± 16g
Интерфейс связи - I2C
Размер - 15х20 мм.
Вес - 5 г


Подходит!

Также пригодится датчик вибраций. Вдруг автомобиль попытаются вскрыть «грубой силой», ну или на парковке другой автомобиль заденет вашу машинку. Возьмём датчик вибраций SW-420 (регулируемый).


Основные характеристики SW-420

Напряжение питания - 3.3 - 5В
Выходной сигнал - цифровой High/Low (нормально закрытый)
Используемый датчик - SW-420
Используемый компаратор - LM393
Размеры - 32x14 мм
Дополнительно - Есть регулировочный резистор.


Подходит!

Прикрутим модуль SD карты памяти. Будем ещё писать лог-файл.


Основные характеристики модуля SD карты памяти

Модуль позволяет хранить, читать и записывать на SD карту данные требуемые для работы прибора на основе микроконтроллера. Применение устройства актуально при хранении файлов от десятков мегабайт до двух гигабайт. На плате размещен контейнер SD карты, стабилизатор питания карты, вилка соединителя линий интерфейса и питания. Если требуется работать с звуковыми, видео или другими объемными данными, например, вести журнал регистрации событий, данных датчиков или хранить информацию веб-сервера, то модуль SD карты памяти для Arduino даст возможность применить SD карту для этих целей. С помощью модуля можно изучить особенности работы SD карты.
Напряжение питания - 5 или 3,3 В
Объем памяти SD карты - до 2 Гбайт
Размеры - 46 х 30 мм


Подходит!

И добавим сервопривод, при срабатывании датчиков будет поворачиваться сервопривод с видеорегистратором и снимать видео происшествия. Возьмём сервопривод MG996R.


Основные характеристики сервопривода MG996R

Стабильная и надежная защита от повреждений
- Металлический привод
- Двухрядный шарикоподшипник
- Длина провода 300 мм
- Размеры 40х19х43мм
- Масса 55 гр
- Угол поворота: 120 град.
- Рабочая скорость: 0.17сек/60 градусов (4.8В без нагрузки)
- Рабочая скорость: 0.13сек/60 градусов (6В без нагрузки)
- Пусковой момент: 9.4кг/см при питании 4.8В
- Пусковой момент: 11кг/см при питании 6В
- Рабочее напряжение: 4.8 - 7.2В
- Все детали привода выполнены из металла


Подходит!

Собираем

Про подключение каждого датчика в «гугле» огромное количество статей. И придумывать новые велосипеды у меня желания нет, поэтому оставлю ссылки на простые и рабочие варианты.

Данный проект касается разработки и усовершенствования системы для предотвращения/контроля любых попыток проникновения воров. Разработанное охранное устройство использует встроенную систему (включает аппаратный микроконтроллер с использованием открытого программного кода и gsm модем) на базе технологии GSM (Глобальная система подвижной связи).

Охранное устройство может быть установлено в доме. Интерфейсный датчик охранной сигнализации также подсоединен к охранной системе на базе контроллера.
При попытке проникновения система передает предупреждающее сообщение (например, sms) владельцу на мобильный телефон или на любой заранее сконфигурированный мобильный телефон для дальнейшей обработки.

Охранная система состоит из микроконтроллера Arduino Uno и стандартного модема SIM900A на базе GSM/GPRS. Вся система может питаться от любого источника питания/батареи 12В 2A.

Ниже показана схема охранной системы на базе Arduino.

Работа системы очень проста и не требует разъяснений. Когда на систему подается питание, она переходит в дежурный режим. Когда выводы коннектора J2 закорочены, заранее запрограммированное предупреждающее сообщение передается на требуемый мобильный номер. Вы можете подсоединить любой детектор обнаружения проникновения (такой как световое защитное приспособление или датчик движения) к входному коннектору J2. Заметьте, что активный-низкий (L) сигнал на выводе 1 коннектора J2 активирует срабатывание охранной сигнализации.

Более того, в систему добавлено опциональное приспособление “вызов – тревога”. Оно активирует телефонный звонок, когда пользователь нажмет кнопку S2 (или когда другой электронный блок инициирует сигнализацию). После нажатия кнопки “call” (S2), вызов можно отменить, нажав другую кнопку S3 – кнопку “end”. Данная опция может использоваться для подачи сигнала тревоги в случае “пропущенного звонка” в случае проникновения.

Схема очень гибкая, поэтому может использовать любой SIM900A модем (и, конечно, плату Arduino Uno). Внимательно прочтите документацию на модем до начала сборки. Это позволит облегчить и сделать приятным процесс изготовления системы.

Список радиоэлементов

Обозначение Тип Номинал Количество Примечание Магазин Мой блокнот
Плата Arduino

Arduino Uno

1 В блокнот
GSM/GPRS-модем SIM900A 1 В блокнот
IC1 Линейный регулятор

LM7805

1 В блокнот
C1 100мкФ 25В 1 В блокнот
C2 Электролитический конденсатор 10мкФ 16В 1 В блокнот
R1 Резистор

1 кОм

1 В блокнот
LED1 Светодиод 1 В блокнот
S1 Кнопка С фиксацией 1
Кражи автомобилей на протяжении последнего десятилетия занимают одно из значимых мест в структуре совершаемых в мире преступлений. Это обусловлено не столько удельным весом данной категории хищений относительно общего количества преступлений, сколько существенностью причиняемого ущерба ввиду большой стоимости автомобилей. Слабая эффективность принимаемых мер в области борьбы с кражами автотранспорта к концу 90-х годов привела к созданию устойчивых групп, специализирующихся на совершении данных преступлений и обладающих отличительными чертами организованной преступности; вы наверняка слышали термин «черный автобизнес». Автомобильный парк европейских государств ежегодно не досчитывается ≈ 2 % машин, которые становятся предметом преступных посягательств. Поэтому мне пришла идея сделать gsm-сигнализацию для своего автомобиля на базе Arduino Uno.

Начнём!

Из чего будем собирать

Надо выбрать сердце нашей системе. На мой взгляд, для подобной сигнализации нет ничего лучше, чем Arduino Uno. Основной критерий - достаточное количество «пинов» и цена.


Основные характеристики Arduino Uno

Микроконтроллер - ATmega328
Рабочее напряжение - 5 В
Входное напряжение (рекомендуемое) - 7-12 В
Входное напряжение (предельное) - 6-20 В
Цифровые Входы/Выходы - 14 (6 из которых могут использоваться как выходы ШИМ)
Аналоговые входы - 6
Постоянный ток через вход/выход - 40 мА
Постоянный ток для вывода 3.3 В - 50 мА
Флеш-память - 32 Кб (ATmega328) из которых 0.5 Кб используются для загрузчика
ОЗУ - 2 Кб (ATmega328)
EEPROM - 1 Кб (ATmega328)
Тактовая частота - 16 МГц


Подходит!

Теперь необходимо выбрать gsm-модуль, ведь наша сигнализация должна уметь оповещать владельца автомобиля. Так, надо «погуглить»… Вот, отличный датчик - SIM800L, размер просто замечательный.


Подумал я и заказал его из Китая. Однако всё оказалось не так радужно. Датчик просто отказался регистрировать SIM-карту в сети. Было опробовано всё, что только возможно - результат нулевой.
Нашлись добрые люди, которые предоставили мне более крутую штуку - Sim900 Shield. Вот это уже серьёзный штучка. В Shield-е и разъём для микрофона и для наушников, полноценный телефон.


Основные характеристики Sim900 Shield

4 стандарта рабочей частоты 850/ 900/ 1800/ 1900 MHz
GPRS multi-slot класс 10/8
GPRS mobile station class B
Соответствует GSM phase 2/2+
Class 4 (2 W @850/ 900 MHz)
Class 1 (1 W @ 1800/1900MHz)
Управление с помощью AT команд (GSM 07.07 ,07.05 и SIMCOM расширенные AT команды)
Низкое энергопотребление: 1.5mA(sleep mode)
Диапазон рабочих температур: от -40°C до +85 °C


Подходит!

Ок, но надо же снимать показания с каких-то датчиков, чтобы оповещать владельца. Вдруг автомобиль эвакуируют, тогда положение автомобиля явно будет меняться в пространстве. Возьмём акселерометр и гироскоп. Отлично. Такс, теперь ищем датчик.

Думаю, что GY-521 MPU6050 точно подойдёт. Оказалось, что в нём есть и датчик температуры. Надо бы и его задействовать, будет такая «киллер фича». Предположим, что владелец автомобиля поставил его под домой и ушёл. Температура в салоне автомобиля будет изменяется «плавно». Что же будет, если злоумышленник попытается проникнуть в автомобиль? Например у него получится открыть дверь. Температура в автомобиле начнёт изменяться стремительно, так как воздух в салоне начнёт смешиваться с воздухом окружающей среды. Думаю, что будет работать.


Основные характеристики GY-521 MPU6050

Модуль 3-х осевого гироскопа + 3-х осевого акселерометра GY-521 на чипе MPU-6050. Позволяет определить положение и перемещение объекта в пространстве, угловую скорость при вращении. Так же имеет встроенный датчик температуры. Используется в различных коптерах и авиамоделях, так же на основе этих датчиков можно собрать систему захвата движений.

Микросхема - MPU-6050
Напряжение питания - от 3,5V до 6V (DC);
Диапазон гироскопа - ± 250 500 1000 2000 ° / с
Диапазон акселерометра - ± 2 ± 4 ± 8 ± 16g
Интерфейс связи - I2C
Размер - 15х20 мм.
Вес - 5 г


Подходит!

Также пригодится датчик вибраций. Вдруг автомобиль попытаются вскрыть «грубой силой», ну или на парковке другой автомобиль заденет вашу машинку. Возьмём датчик вибраций SW-420 (регулируемый).


Основные характеристики SW-420

Напряжение питания - 3.3 - 5В
Выходной сигнал - цифровой High/Low (нормально закрытый)
Используемый датчик - SW-420
Используемый компаратор - LM393
Размеры - 32x14 мм
Дополнительно - Есть регулировочный резистор.


Подходит!

Прикрутим модуль SD карты памяти. Будем ещё писать лог-файл.


Основные характеристики модуля SD карты памяти

Модуль позволяет хранить, читать и записывать на SD карту данные требуемые для работы прибора на основе микроконтроллера. Применение устройства актуально при хранении файлов от десятков мегабайт до двух гигабайт. На плате размещен контейнер SD карты, стабилизатор питания карты, вилка соединителя линий интерфейса и питания. Если требуется работать с звуковыми, видео или другими объемными данными, например, вести журнал регистрации событий, данных датчиков или хранить информацию веб-сервера, то модуль SD карты памяти для Arduino даст возможность применить SD карту для этих целей. С помощью модуля можно изучить особенности работы SD карты.
Напряжение питания - 5 или 3,3 В
Объем памяти SD карты - до 2 Гбайт
Размеры - 46 х 30 мм


Подходит!

И добавим сервопривод, при срабатывании датчиков будет поворачиваться сервопривод с видеорегистратором и снимать видео происшествия. Возьмём сервопривод MG996R.


Основные характеристики сервопривода MG996R

Стабильная и надежная защита от повреждений
- Металлический привод
- Двухрядный шарикоподшипник
- Длина провода 300 мм
- Размеры 40х19х43мм
- Масса 55 гр
- Угол поворота: 120 град.
- Рабочая скорость: 0.17сек/60 градусов (4.8В без нагрузки)
- Рабочая скорость: 0.13сек/60 градусов (6В без нагрузки)
- Пусковой момент: 9.4кг/см при питании 4.8В
- Пусковой момент: 11кг/см при питании 6В
- Рабочее напряжение: 4.8 - 7.2В
- Все детали привода выполнены из металла


Подходит!

Собираем

Про подключение каждого датчика в «гугле» огромное количество статей. И придумывать новые велосипеды у меня желания нет, поэтому оставлю ссылки на простые и рабочие варианты. человек со стажем 15 февраля 2012 в 16:34

Сигнализация в помещение на Arduino

  • Чулан *

Добрый день.

Хочу представить вашему вниманию сигнализацию для любого помещения - дома, магазина, офиса, которая при обнаружение нежелательного проникновения отправляет email и звонит на мобильный телефон.

Уникальность сигнализации - все управление сигнализацией осуществляется через веб сайт makridenkov.ru/signals , с любого устройства, Android, iPhone. Железо - самодельное, на Arduino с низкой стоимостью ~45$. Схема и программа железа открыты по ссылке . Легко повторить самостоятельно.

Общая схема работы сигнализации.

Как видно из рисунка Arduino передает всю информацию с датчиков на сайт управления. На сайте в зависимости от состояния “включена” или “отключена” сигнализация принимается решение поднимать тревогу или нет.

Arduino каждые 20 секунд отправляет сигнал “есть связь”. Это позволяет оповестить владельца помещения о ситуации если злоумышленник выключил электричество или каким-либо образов вывел сигнализацию из строя, сломал, или применил какие-либо средства радио помех “gsm глушилки”. Т.о. оповещение полностью независимо от состояния железа в помещении.

Забавно

Сигнализацию можно использовать как теленяню.
Установить датчик над кроватью малыша и спокойно посетить ближайший магазин. Если малыш проснулся и начал двигаться зазвонит ваш мобильный телефон.

На сайте управления сигнализацией строится график перемещения по помещению. Т.о. получаем картинку какие пути и места пользуются популярностью. Зачем? Например выяснить как часто продавцы вашего магазина посещают курилку. Или шутки ради, задать вопрос, что чаще посещает ваша супруга - место для приготовления пищи или компьютер с интернетом? На эти вопросы отвечает график перемещения.

Видео демонстрация работы

Реализация

Железо весьма просто собрать самостоятельно. Стоимость около 45$.
Детально, где и что покупать по ссылке , актуальная информация.
Принципиальная схема на рисунке.

Итого

Надеюсь сигнализация поможет чувствовать спокойствие за магазин, дом.
Так же, думаю, интересно и полезно собрать подобное устройство самостоятельно, как начало творческой деятельность на замечательной, удобной и простой платформе Arduino. Хотя, мое мнение, я бы предпочел писать программы для Arduino на Ruby, а не на СИ.

Хочу продемонстрировать данные, которые удалось собрать сигнализации.
Мой график перемещения.

Обычно из графика перемещения видно, что достаточно одной комнаты в квартире, когда проживаешь один. Однако, сегодня я передвигался по всем комнатам, почему-то.

Забавное наблюдение, точно можно посмотреть во сколько вышел на работу. И использовать эти данные, как инструмент самосовершенствования пунктуальность.

П.С. Фотографии готового и работающего устройства.

На этом рассказу конец.
Всего наилучшего.

Теги: схема, сигнализация, gsm, arduino, самодельная,

Сегодня речь пойдет о том, как с помощью Ардуино собрать охранную систему . Наша «охрана» будет сторожить один контур и управлять одним оповещателем.

Для Ардуино это не проблема, и, как вы увидите по коду программы и по схеме устройства, можно легко увеличить количество охраняемых точек доступа и количество устройств оповещения или индикации.
Охранную систему можно применить для охраны как больших объектов (зданий и сооружений), так и небольших предметов (шкатулок, сейфов), и даже переносных кейсов и чемоданов. Хотя с последними надо быть поосторожнее, если вы установите систему охраны, например, на чемодан, с которым решите отправиться в путешествие, и система оповещения сработает в каком-нибудь аэропорту, то, думаю, вам предстоит серьезная беседа с местной службой безопасности:-)

Упрощенно принцип работы устройства выглядит следующим образом (рис. 1). После включения питания устройство переходит в рабочий режим и ждет постановки на охрану. Постановка и снятие с охраны осуществляются одной кнопкой. Для повышения безопасности эту кнопку лучше расположить внутри охраняемого помещения (сейфа или шкатулки). Перед включением режима охраны дверь нужно приоткрыть. При включении режима охраны (нажатии на кнопку) электронная схема ждет, пока вы не закроете дверь в помещение (дверцу сейфа, крышку шкатулки, и т.д.).

На двери (или дверце) должен быть установлен концевой выключатель любого типа, об этом позднее. Замыкаясь (или размыкаясь), концевой выключатель сообщит устройству, что охраняемый контур замкнут, и устройство перейдет в режим охраны. О переходе в режим охраны система оповестит двумя короткими сигналами (как в автомобильных сигнализациях). В этом режиме устройство «ловит» открытие двери. После открытия двери система ждет несколько секунд (это величина настраиваемая, для помещений около десяти секунд, для шкатулки одна-две) отключения режима охраны, если этого не происходит, включается сирена. Алгоритм и схема разработаны так, что отключить сирену можно, только полностью разобрав корпус и отключив питание.

Устройство охранной системы очень простое (рис. 2). В основе плата Ардуино . Концевые выключатели подключаются, как обычная кнопка, через подтягивающие резисторы. На концевиках остановлюсь отдельно. Они бывают нормально замкнутые и нормально разомкнутые. Можно в качестве концевика включить обычную кнопку, только ход обычной кнопки очень велик, люфт двери обычно больше. Поэтому необходимо придумать какой-нибудь толкатель для кнопки и подпружинить, чтобы не сломать кнопку дверью. Ну и если не лень, то можно дойти до магазина и купить магнитный выключатель (геркон) (рис. 3), он не боится пыли и загрязнений.

Подойдет и концевой выключатель для автосигнализации (рис. 4). Следует отметить, программа написана под геркон. При закрытой двери его контакт замкнут. Если использовать выключатель от автосигнализации, то при закрытой двери он будет скорее всего разомкнут, и в соответствующих местах кода нужно будет поменять 0 на 1 и наоборот.

В качестве сирены предлагаю использовать оповещатель звуковой ПКИ-1 ИВОЛГА белорусского производства (рис. 5). Напряжение питания 9 - 15 В, рабочий ток 20 - 30 мА. Это позволяет использовать его с батарейным питанием. При этом он «выдает» 95 - 105 дБ.

При таких характеристиках от батарейки «Крона» он будет звучать несколько десятков минут. Я его нашел в интернете за 110 руб. Там же геркон с магнитом стоит около 30 руб. Выключатель от автосигнализации в автозапчастях был куплен за 28 руб. Транзистор КТ315 можно взять с любой буквой или заменить на любой современный маломощный кремниевый транзистор соответствующей проводимости. Если громкости одного оповещателя не хватит (кто знает, может, вы захотите, чтобы было слышно за многие километры), можно подключить несколько оповещателей параллельно или взять более мощный, только в этом случае и транзистор нужно заменить на более мощный (например, знакомую нам транзисторную сборку ULN2003). В качестве разъемов для подключения геркона и сирены я применил самые простые разъемы для аудио/видеоустройств - цена на радиорынке 5 руб. за пару.

Корпус устройства можно склеить из пластика или фанеры; если охраняется серьезный объект, то его лучше сделать металлическим. Батареи или аккумуляторы питания для повышения надежности и безопасности желательно разместить внутри корпуса.

Для упрощения программного кода не были использованы элементы энергосбережения, и батареек надолго не хватает. Можно оптимизировать код, а еще лучше радикально переделать, применив обработку событий по прерываниям и спящий режим МК. В этом случае питания от двух квадратных батареек, включенных последовательно (9 В), должно хватить на несколько месяцев.

Теперь код

// постоянные
const int button = 12; // пин для кнопки
const int gerkon = 3; // пин для геркона
const int sirena = 2; // пин упр-ния сиреной
const int led = 13; // пин индикатора
// переменные
int buttonState = 0; // состояние кнопки
int gerkonState = 0; // состояние геркона
int N = 0; // счетчик кнопки отключения охраны
void setup() {
// управление сиреной и индикатором - выход
pinMode(sirena, OUTPUT);
pinMode(led, OUTPUT); // кнопка и геркон - входы
pinMode(gerkon, INPUT);
pinMode(button, INPUT);
}
void loop(){
digitalWrite(led, HIGH);
while(buttonState= =0){ // цикл ожидания, пока не нажмем кнопку
buttonState = digitalRead(button); // для перехода в режим охраны
}
digitalWrite(led, LOW);
buttonState = 0; // обнуляем значение кнопки
while(gerkonState= =0){ // цикл, пока не закроем дверь

}
delay (500); // :-)
digitalWrite(sirena, HIGH); // Код
delay (100); // индикации
digitalWrite(sirena, LOW); // включения
delay (70); // режима
digitalWrite(sirena, HIGH); // охраны
delay (100); // оповещение
digitalWrite(sirena, LOW); // звуковое
while(gerkonState= =1){ // ждем открытия двери
gerkonState = digitalRead(gerkon);
}
for (int i=0; i <= 5; i++){ // 7,5 секунды на нажатие
buttonState = digitalRead(button); // секретной кнопки
if (buttonState = = HIGH) { // отслеживаем свой - чужой
N=N+1;
}
delay(1500); // секретная фича:-)))
}
if (N > 0) { // самое главное
digitalWrite(sirena, LOW); // не включаем сирену
}
else {
digitalWrite(sirena, HIGH); // или включаем сирену
}
digitalWrite(led, HIGH); // включаем индикатор N = 0;
buttonState = 0;
delay(15000); // напоминание «чайникам», которым нравится
digitalWrite(led, LOW); // давить на кнопки без перерыва delay (1000);